home *** CD-ROM | disk | FTP | other *** search
- /* MPEGSTAT - analyzing tool for MPEG-I video streams
- *
- * Technical University of Berlin, Germany, Dept. of Computer Science
- * Tom Pfeifer - Multimedia systems project - pfeifer@fokus.gmd.de
- *
- * Jens Brettin, Harald Masche, Alexander Schulze, Dirk Schubert
- *
- * This program uses parts of the source code of the Berkeley MPEG player
- *
- * ---------------------------
- *
- * Copyright (c) 1993 Technical University of Berlin, Germany
- *
- * for the parts of the Berkeley player used:
- *
- * Copyright (c) 1992 The Regents of the University of California.
- * All rights reserved.
- *
- * ---------------------------
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose, without fee, and without written agreement is
- * hereby granted, provided that the above copyright notices and the following
- * two paragraphs appear in all copies of this software.
- *
- * IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA
- * or the Technical University of Berlin BE LIABLE TO ANY PARTY FOR
- * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
- * OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
- * CALIFORNIA or the Technical University of Berlin HAS BEEN ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * THE UNIVERSITY OF CALIFORNIA and the Technical University of Berlin
- * SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE
- * UNIVERSITY OF CALIFORNIA and the Technical University of Berlin HAVE NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- */
- #ifdef __STDC__
- # define P(s) s
- #else
- # define P(s) ()
- #endif
-
-
- /* util.c */
- void correct_underflow P((void ));
- int next_bits P((int num , unsigned int mask ));
- char *get_ext_data P((void ));
- int next_start_code P((void ));
- char *get_extra_bit_info P((void ));
-
- /* video.c */
- void init_stats P((void ));
- void PrintAllStats P((void ));
- double ReadSysClock P((void ));
- void PrintTimeInfo P((void ));
- VidStream *NewVidStream P((int bufLength ));
- void DestroyVidStream P((VidStream *astream ));
- PictImage *NewPictImage P((unsigned int width , unsigned int height ));
- void DestroyPictImage P((PictImage *apictimage ));
- VidStream *mpegVidRsrc P((TimeStamp time_stamp , VidStream *vid_stream ));
- void ToggleBFlag P((void ));
- void TogglePFlag P((void ));
-
- /* parseblock.c */
- void ParseReconBlock P((int n ));
- void ParseAwayBlock P((int n ));
-
- /* motionvector.c */
- void ComputeForwVector P((int *recon_right_for_ptr , int *recon_down_for_ptr ));
- void ComputeBackVector P((int *recon_right_back_ptr , int *recon_down_back_ptr ));
-
- /* decoders.c */
- void init_tables P((void ));
- void decodeDCTDCSizeLum P((unsigned int *value ));
- void decodeDCTDCSizeChrom P((unsigned int *value ));
- void decodeDCTCoeffFirst P((unsigned int *run , int *level ));
- void decodeDCTCoeffNext P((unsigned int *run , int *level ));
-
- /* main.c */
- int get_more_data P((unsigned int *buf_start , int max_length , int *length_ptr , unsigned int **buf_ptr ));
- void int_handler P((void ));
- void main P((int argc , char **argv ));
- void usage P((char *s ));
- void DoDitherImage P((unsigned char *l , unsigned char *Cr , unsigned char *Cb , unsigned char *disp , int h , int w ));
-
- /* jrevdct.c */
- void init_pre_idct P((void ));
- void j_rev_dct_sparse P((DCTBLOCK data , int pos ));
- void j_rev_dct P((DCTBLOCK data ));
- void j_rev_dct_sparse P((DCTBLOCK data , int pos ));
- void j_rev_dct P((DCTBLOCK data ));
-
- #undef P
-